查看原文
其他

所见即所着-ADAM中的服装设计与布料模拟

2017-12-14 Unity官方 Unity官方平台

大家应该对于Oats Studios为《ADAM 2》和《ADAM 3》创造出那样逼真的布景、人物和服饰感到非常好奇吧!请跟随我们深度揭秘系列文章的脚步,了解Alembic支持、布料模拟、光照、着色器、实时渲染等更多幕后内容吧!


如果你看过《ADAM 2》和《ADAM 3》,你可能会有许多疑问。这是怎么做到的?意味着什么?我什么时候可以看到更多内容?我们从社区接收到无数用户对使用Unity制作的电影短片的热情反馈。


https://v.qq.com/txp/iframe/player.html?vid=x0512d5u6mp&width=500&height=375&auto=0

全球观众好奇心的很大一部分集中在ADAM中布景与角色令人难以置信的逼真度上,以及它们是如何在一个游戏引擎里被构建、整合,并以30FPS的帧率渲染的。对于一个显然是合成的创造物,却无比真实。今天我们将为大家分享ADAM中的服装设计与布料模拟。


原始与高科技感混合的服装设计

单从衣物正面看,我们可以看到精致的全身连帽长袍、粗糙编织的头巾和大兜帽、邋遢的紧身裤、硬皮手套、防护手套、腰带以及其它配饰等一整套显然由丢弃物拼凑而成的装备,显的原始和高科技混合的感觉。


在Oats Studios里模拟的ADAM服装模型


数字化的真实展现

我们惊叹这种反乌托邦式的服装以及它在ADAM中呈现的真实度,我们采访了一些在ADAM 中负责这部分制作和仿真的工作人员。


Chris Harvey是Oats Studios的视觉特效总监,他告诉我们:制作ADAM,甚至是物理环境的整个方法对于导演和我都是很熟悉的,即实际性的工作与视觉特效的制作。不是用纯粹的艺术和高科技,而是使用一些有形和物理的元素来表现天然真实的东西。


Chris Harvey的经验告诉他,当工作室以数字方式做所有事情的时候,通常会忽略很多细节。这就是为什么我们更喜欢在现实生活中建造一些东西 – 你可以触摸、感受和看到的东西。


导演Neill Blomkamp也同意这样的观点:我们创造现实生活中的服装,使用传统电影的服装设计,我们将使用摄影测量技术把它变成三维物体,在电影中覆盖我们的3D角色。


https://v.qq.com/txp/iframe/player.html?vid=v05188rup2b&width=500&height=375&auto=0

服装设计准备

在ADAM还没有进行选择演员选角之前,工作室服装设计师Kristin Thurber就开始为那些令人难忘的角色设计服装,比如读取者镜、Needalus、Marion。由于没有演员的确切尺码,在后续的工作流程需要对服装进行数字化的调整。


Kristin Thurberr收集材料为制作服装做了很多准备。她搜刮了工作室里很多东西,这些都是二次利用的东西,它们来自一些预先做好的服装,被破坏、涂漆、融化,然后被胶带一层层粘在一起。


服装设计师Kristin Thurber正在制作Marion的衣服


缝纫模式

在设计各种服装的时候,Kristin Thurber使用的是传统缝纫模式,这也是后面在CG中“重建”服装的必备要素。


正如Chris Harvey表示:人们可能会惊奇的发现,我们会使用传统的缝纫模式。那种我们小时候看到的,我们的妈妈所使用的模式。通常是用怪异的剪裁、凹槽和针脚,将一些三角块拼凑到一起,这样衣物的最终覆盖方式都是由这些基本组成元素决定的。


 Mirror的服装是在Marvelous Designer中创建


在ADAM中,绝大多数角色进行CG服装建模只是建立一个管状体,把它贴在一个替身上,然后对它进行虚拟的调整,这样会导致它的移动方式非常不自然。如果可行,那就使用更传统的缝纫模式来制作,这样更符合真人的形状和动作。


数字化布料

服装一旦制作完成,它们就被数字裁缝Sean Frandsen带入摄影测量房间进行高分辨率的拍摄,供后续使用。


电子扫描过程至关重要,这样我们可以准确的看到Kristin Thurber打算做出怎样的外观与褶皱的衣服。然后在扫描之后,Sean Frandsen可以看到穿在真实演员身上的衣服,他可以对样式进行调整以确保这个数字版本的褶皱与移动更加真实。


Sean Frandsen表示:我遵从Kristin Thurber所用的模式工作。因为这个模式下,布料能更好的停留在身体上,贴合角色的移动。我试着遵循每一种布料的正确的物理特性,因为我能控制所有参数。


扫描真正的服装(左)和带真实物理性与运动的模拟版本(右)


在完整3D电子扫描中,除了对体积和颜色的参考外,Sean Frandsen还花了几个小时在一个昏暗的房间里,用这个装备造出了一个12英寸见方的样本,提供给4K的分辨率。因此这一步让对布料的细节和颜色有了很大的控制,可以使用它平铺整块布料。


Sean Frandsen表示:我们想要得到许多的纹理。比如读取者镜的长袍上有个洞,所以我们需要一些不透明度。为了实现它,我们在盒子里的长袍下放了一盏灯,就能得到一个完美的不透明度示意图。然后在不移动布料的情况下,我们会在布料的周围取8个不同的角度,把所有的角度放在一起。我们收集所有的小波纹,甚至是细小的编织纹理,把它当作一个普通贴图或凹凸贴图或置换贴图。那就是我们如何开始,通过建立起所有自己的贴图和纹理。这给我们在所有布料上提供了二种纹理贴图。


细节: 读取者镜的服装显示出穿孔和不透明


通往Unity之路上的奇妙旅程

在使用Adobe Photoshop和Lightroom进行一些工作之后,样本被导入到了Marvelous Designer中。在Kristin Thurber完成缝纫后,Sean Frandsen开始用数字方式缝制衣服,非常注重模仿织物的自然特性,无论它是羊毛、棉花,皮革等。


这与那些仅使用合成布的做法有一个关键的区别:他们会把那些不会移动或者看起来不正确的褶皱给烘焙进去,而在我们做的所有褶皱中,没有特别雕刻或烘焙任何东西,所以如果一个角色抬起他的双臂,我们能确保所有的褶皱和折痕都能像它们在现实生活中的表现一样。


Marvelous Designer中使衣服动起来


导演Neill Blomkamp也表示相同的意见:对于真正的高分辨率的布料运动,我们在系统外部进行了模拟,然后我们把它导入Unity。所以,所有困难的预合成都已经做完,计算机只需要渲染预计算的布料,使它看起来就像是在流动一样。


Alembic 导入器

高保真度模仿的关键点在于要把所有几何数据导入Unity中,正如Chris Harvey表示:使用Unity的Alembic导入器是我们超级关键的桥梁。我们需要它能够缓存非常大的几何数据集。它与例如像Sean Frandse这样艺术家原有的工作方式无缝衔接,帮助他们能够在非常熟悉的工具,如Marvelous、Maya或者3ds Max中工作,而且还能很容易的将这些东西导入到游戏引擎中。


在《ADAM揭秘 | Unity Alembic导入工具的开发历程》中,你可以了解所有Unity对Alembic提供的新支持,以及它是如何帮助Oats团队在ADAM中实现他们的想法。


最具挑战性服装的制作

当在创新流程并在新效果上冒险的时候,你会遇到很多问题,所以我们来问问Sean Frandsen哪个角色的衣服最难。


 “奇怪的是,Marion我认为这个角色是最简单的。但实际上是最困难的,因为她穿的那些紧身裤和材料以及移动的布料都是多层穿透的。虽然模拟本身可能很容易,但团队必须做很多修正。”


Marion的复杂服装和呼吸装置


因为她的多层衣服,工作人员决定了部分通过开发,而不是所有的东西都在Marvelous Designer中创作,因为有太多的数据需要完成。因此她的下面的一些部分由资深角色艺术家Ian Springgs用更传统的方式造型设计:用一个安装在她周围的典型的电子扫描程序来制作网格,然后做造型,用它来进行纹理烘焙。为了完成这个任务,Sean Frandsen在Marvelous Designer中构建其它图层,并将其覆盖在最上面。


Sean Frandsen也会把一些衣服碎片带进ZBrush,然后做了一个被认为是缝合的造型和其他缝纫水平的细节来导出作为普通的贴图。


关于次世代效果的建议

最后,Chris Harvey会对任何想尝试在Unity中实现这种超级厉害的布料动画的人有什么建议?


 “我会建议他们从缝纫模式开始。使用真实的参照,以真实物理特性为基础。从那些事情开始总没错。”


小结

了解更多有关Unity 2017 和它的特性,例如TimelineCinemachine, Post-Processing Stack,以及如何以30FPS进行实时渲染,这些将帮助像Oats Studios这样的团队改变电影制作未来。更多ADAM揭秘尽在Unity官方社区Unitychina.cn!


更多影视内容


官方活动

UPA预约使用12月21日正式结束,有需求的开发团队赶紧预约吧 ! 我们提供了最新的UPA使用帮助以及开辟了最新的论坛,方便开发者们了解UPA!


为期1个半月,由Unity举办的《Neon挑战赛》全球开启,寻找最具创意的你!感兴趣的朋友们请访问Unity Connect了解详情。

地址:https://connect.unity.com/challenges/neon


点击“阅读原文”访问Unity官方社区!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存